package mx.collections;

extern interface IList implements flash.events.IEventDispatcher {
	var length(default,null) : Int;
	function addItem(item : Dynamic) : Void;
	function addItemAt(item : Dynamic, index : Int) : Void;
	function getItemAt(index : Int, ?prefetch : Int) : Dynamic;
	function getItemIndex(item : Dynamic) : Int;
	function itemUpdated(item : Dynamic, ?property : Dynamic, ?oldValue : Dynamic, ?newValue : Dynamic) : Void;
	function removeAll() : Void;
	function removeItemAt(index : Int) : Dynamic;
	function setItemAt(item : Dynamic, index : Int) : Dynamic;
	function toArray() : Array<Dynamic>;
}
